/*
 * connexion.h
 * projet Unix: 6 qui prend
 *
 *  @authors Doublier Sami
 *  @authors Pingot Alexandre
 */

#if !defined(_CONNEXION_H_)
#define _CONNEXION_H_
#include "include.h"

typedef struct connection_mgr {
	int sckfd; /* socket file descriptor */
	struct sockaddr_in * address; /* adresse utilisée pour se connecter */

} connection_mgr;

/* Structure utilisée pour la communication entre le client et le serveur */
typedef struct message {
	int type;
	char content[MAXLINE];
} message;

/* Etabli une connexion sur un socket */
void startConnection(int, struct sockaddr_in *);

/* Création d'un socket et retour d'un descripteur permettant d'identifier le socket */
int createSocket();

/* Initialise la structure hostent et renvoie un pointeur sur une structure hostent */
struct hostent * initHost(char *);

/* Initialisation du client*/
struct sockaddr_in* initClientAddress(int, struct hostent *);

/* Vérifier que le numéro du port passé en paramètre peut être utilisé */
int verifierNumPort(char * chaine);

/* Envoie un message au client expliquant la raison de sa déconnexion et ferme sa connexion */
void closeConnectionClient(int,message * messg);

#endif

